Assurance cases and prescriptive software safety certification: A comparative study
نویسندگان
چکیده
In safety–critical applications, it is necessary to justify, prior to deployment, why software behaviour is to be trusted. This is normally referred to as software safety assurance. Within certification standards, developers demonstrate this by appealing to the satisfaction of objectives that the safety assurance standards require for compliance. In some standards the objectives can be very detailed in nature, prescribing specific processes and techniques that must be followed. This approach to certification is often described as prescriptive or process-based certification. Other standards set out much more high-level objectives and are less prescriptive about the particular processes and techniques to be used. These standards instead explicitly require the submission of an assurance argument which communicates how evidence, generated during development (for example from testing, analysis and review) satisfies claims concerning the safety of the software. There has been much debate surrounding the relative merits of prescriptive and safety assurance argument approaches to certification. In many ways this debate can lead to confusion. There can in fact be seen to be a role for both approaches in a successful software assurance regime. In this paper, we provide a comparative examination of these two approaches, and seek to identify the relative merits of each. We first introduce the concepts of assurance cases and prescriptive software assurance. We describe how an assurance case could be generated for the software of an aircraft wheel braking system. We then describe how prescriptive certification guidelines could be used in order to gain assurance in the same system. Finally, we compare the results of the two approaches and explain how these approaches may complement each other. This comparison highlights the crucial role that an assurance argument can play in explaining and justifying how the software evidence supports the assurance argument, even when a prescriptive safety standard is being followed. 2013 Elsevier Ltd. All rights reserved.
منابع مشابه
Software Certification: Is There a Case against Safety Cases?
Safety cases have become popular, even mandated, in a number of jurisdictions that develop products that have to be safe. Prior to their use in software certification, safety cases were already in use in domains like aviation, military applications, and the nuclear industry. Argument based methodologies/approaches have recently become the cornerstone for structuring justification and evidence t...
متن کاملReviewing Assurance Arguments – A Step-By-Step Approach
An assurance case based regime requires a strong review element. Typically, one party is responsible for preparing the assurance case. Another party (the certification authority) is responsible for accepting the assurance case. Assurance cases are, by their nature, often subjective. The objective of assurance case development, therefore, is to obtain mutual acceptance of this subjective positio...
متن کاملMerging Safety and Assurance: The Process of Dual Certification for Software
This paper describes a process of dual certification for software that meets both FAA safety requirements and NIST/NSA security requirements. The commercial avionics industry depends on RTCA DO-178B, for software assurance while security products are evaluated according to the Common Criteria. The two sets of requirements from DO-178B and the Common Criteria are assessed for similarity of funct...
متن کاملSoftware Certification : Methods and Tools
With the pervasive deployment of software in dependable systems used in everyday life, society is increasingly demanding that software used in critical systems must meet minimum safety, security and reliability standards. Certification is the procedure by which an authorized person or agency assesses and verifies characteristics of a system or product in accordance with established requirements...
متن کاملUncertainty and Confidence in Safety Logic
Reasoning about system safety requires reasoning about confidence in safety claims. For example, DO-178B requires developers to determine the correctness of the worst-case execution time of the software. It is not possible to do this beyond any doubt. Therefore, developers and assessors must consider the limitations of execution time evidence and their effect on the confidence that can be place...
متن کامل